1. Field of the Invention
The present disclosure relates to data processing, and more specifically, to a server that accommodates requests for data, where the data resides in a distributed data storage system that includes a plurality of data repositories.
2. Description of the Related Art
The approaches described in this section are approaches that could be pursued, but not necessarily approaches that have been previously conceived or pursued. Therefore, unless otherwise indicated, the approaches described in this section may not be prior art to the claims in this application and are not admitted to be prior art by inclusion in this section.
A web-based computer system is often referred to as an Application Service Provider (ASP) system. For example, an ASP may provide a computer-based service to a customer over a network, e.g., the Internet. Conventional ASP systems include a platform layer that hosts a plurality of applications, where each of the applications contains one or more services and data.
An exemplary ASP system described by U.S. Pat. No. 7,708,196 to Palmieri et al (hereinafter “Palmieri et al.”), which is herein incorporated by reference in its entirety, provides for a web-based ASP with a single platform that hosts multiple applications.
FIG. 1 is a block diagram of a prior art data processing system, i.e., system 100. System 100 is an ASP system in which customers 105 using customer devices (not shown) interface with a web service interface 110 to utilize applications 115, 130 and 145. Application 115 includes services 120 and a data store 125. Application 130 includes services 135 and a data store 140. Application 145 includes services 150 and a data store 155. Each of data stores 125, 140 and 155 includes a server (not shown) and one or more databases (not shown).
Application 115, for example, may include various risk management solutions such as comprehensive monitoring and portfolio analysis for identified companies. Customers 105, via web service interface 110, access application 115. Application 115 contains instructions to be executed with services 120. Services 120, when instructed by application 115, executes instructions on data in data store 125.
System 100 contains numerous technical drawbacks. The application/service/data relationship creates multiple duplicate data sets within application and services pairings. This redundant and duplicative data creates significant technology challenges to maintain data integrity and consistency let alone allow for updates. For example, one or more services 120 may be duplicative of one or more services 135 and one or more services 150. Similarly, data that is needed in each of data stores 125, 140 and 155 must be replicated in each of data stores 125, 140 and 155. That is, for each application that requires the same data, that same data must be replicated in the application's corresponding data store. As a result, if data requires updating, the same data must be updated for each application. This approach proves cumbersome to ensure data integrity amongst each application and further requires resources dedicated to ensure all common data is updated. In addition, when a service that is included in two or more of services 120, 135 and 150 is updated, replaced, or modified, an operator of system 100 must update, replace or modify the service in each of the affected applications 115, 130 and 145. Such activities are labor intensive, time consuming, and error prone.